home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1997 May / EnigmA AMIGA RUN 18 (1997)(G.R. Edizioni)(IT)[!][issue 1997-05][EAR-CD II].iso / earcd / util / dir / managers.lha / Managers / Dir / Dir.search < prev    next >
Text File  |  1997-01-15  |  2KB  |  100 lines

  1. G4C
  2.  
  3.  
  4. WinBig -1 -1 400 128 'Getting Files'
  5. WinType 11110001
  6. Box 0 0 0 0 out button
  7.  
  8.  
  9. xOnLoad
  10. gosub dir.search startup
  11.  
  12. xOnReload            ; cause if lvmulti finds an error it will stop
  13. gosub dir.search startup    ; and gui will remain loaded
  14.  
  15. xroutine startup
  16. setvar  sc_id   $$LV_ID
  17. setvar  sc_dir  $$LV_DIR
  18. setvar  .search ""
  19. setscreen dir.search $lv_fmscreen
  20. lvmulti dir.gc  $sc_id   first
  21. if $lv_file = ""
  22.    ezreq "How's about choosing\nsome files first ?" 'Oh yeah..' ""
  23.    guiquit dir.search
  24.    stop
  25. endif
  26. guiopen dir.search
  27.  
  28.  
  29. xOnOpen
  30. while $lv_file > ""
  31.    lvadd dir.search 3 $lv_file
  32.    lvmulti dir.gc $sc_id next
  33. endwhile
  34. setwintitle dir.search 'Enter substring to search for:'
  35. setgad dir.search 2 ON
  36. run 'resident c:search pure add'
  37.  
  38. xOnClose
  39. guiquit dir.search
  40. run 'resident search remove'
  41.  
  42. xOnQuit
  43. delvar sc_#?
  44. delvar .search
  45.  
  46. xOnFail
  47. update dir.search 2 '*** Error during search ***'
  48. guiwindow dir.search resume
  49.  
  50.  
  51. ;========================= Gadgets
  52.  
  53. xTextIn  5 2 390 20 "" sc_string "" 130
  54. gadid 2
  55. delvar .search
  56. lvget dir.search 3 0 sc_file
  57. setvar .search '$sc_file\n'
  58. guiwindow dir.search wait
  59. setstack 10000
  60. Launch 1 'search >>env:.search $sc_file $sc_string ALL'
  61. setstack 4000
  62.  
  63.  
  64. xOnReturn 1
  65. lvdel dir.search 3 0
  66. lvget dir.search 3 0 sc_file
  67. if $sc_file > ' '
  68.    append env:.search '$sc_file\n'
  69.    setstack 10000
  70.    Launch 1 'search >>env:.search $sc_file $sc_string ALL'
  71.    setstack 4000
  72. else
  73.    lvchange dir.search 3 env:.search
  74.    guiwindow dir.search resume
  75.    if $.search > ' '
  76.       setwintitle dir.search 'Search finished - Click on filename wanted'
  77.    else
  78.       setwintitle dir.search 'Search finished - No files found'
  79.    endif
  80. endif
  81.  
  82.  
  83. xlistview 5 25 390 100 "" sc_file "" 10 TXT
  84. GADID 3
  85. cutvar sc_file copy char 1 sc_char
  86. if $sc_char = ' '
  87.    stop
  88. endif
  89. extract sc_file path sc_path
  90. extract sc_file file sc_name
  91. lvdir dir.gc $sc_id #$sc_path
  92. lvfind dir.gc $sc_id $sc_name
  93. if $sc_id = 1
  94.    setwintitle dir.gc '$sc_path                               '
  95. else
  96.    update dir.gc 10 '$sc_path'
  97. endif
  98.  
  99.  
  100.